Skip to main content

Full text of "OpenWest 2017 - Passing the Baton: Succession Planning for FOSS leadership"

See other formats


Passing the Baton 


Succession planning for FOS 


leadership 


A 


OpenWest 2017 


» 

/ 


f> \ 

0 v 


@vmbrasseur 


\ 


@vmbrasseur, CC BY-SA 



VM (Vicky) Brasseur 


& @vmbrasseur 
? vmbrasseur 

p openwest@vmbrasseur.com 


@vmbrasseur, CC BY-SA 


2 


Freelance open source business strategy consultant 

Author & community moderator for 
opensource.com 



Slides: 


https ://archive.org/details/ 
openwest20 17- 
successionplanning 


@vmbrasseur, CC BY-SA 



YMMV 


@vmbrasseur, CC BY-SA 


Succession planning can be a complicated thing at times. 

I will be presenting general tips for how to approach this 
process. 

Not all of the recommendations will necessarily apply to 
your specific situation. 

For instance, some of the recommendations may apply 
better to large projects, others to small projects. It all 
depends on the project in question & its special needs. 

Take from the presentation what you need. Don't feel 
obligated to follow every suggestion to the letter. 



Please save questions for 
the end 


@vmbrasseur, CC BY-SA 

5 


I've built in time at the end to make sure we have time to 
cover your questions. 

But please save them for the end. Don't worry: well have 
time. 



Brief history of FOSS 


@vmbrasseur, CC BY-SA 


Let's set some context. 

A We've been sharing software for as long as there' 
BEEN software 

A But free/open software as a recognizable 
movement only started 40 years ago. 

A Let's quickly look at some of the many highlights 
of our history. 



1970s & 1980s 


- 1976: emacs 

- 1983: GNU 

- 1984: X 

- 1985: FSF 

- 1987: Perl 


@vmbrasseur, CC BY-SA 


7 


emacs: Moon & Steele 
A GNU, FSF: RMS 
A X: Gettys & Sheifler at MIT 
A Perl: Created by Larry Wall, whom if you 
haven't met I recommend you do as he may just 
be the nicest, kindest man in all of technology 

Note also: Perl is 30 years old this year! 
Congratulations! 



1990s 


— 1991: Linux, Python 

— 1993: NetBSD, FreeBSD 

— 1995: PHP, GIMP, Ruby 

— 1996: Apache, KDE 

— 1997: GNOME 

— 1998: "open source" coined, OSI formed 

— 1999: OpenOffice, Apache Software Foundation 

@vmbrasseur, CC BY-SA 8 


Things started getting really exciting in the 1990s. 

A Aside from all of the above, the open software team at Sun 
Microsystems was doing some stellar fundamental work on what 
later became open source software and the movement around it. 



2000s 


— 2003: Mozilla, Wikimedia 

— 2004: Ubuntu 

— 2005 : git 

— 2006: Software Freedom Conservancy 

— 2007: OpenJDK 

— 2008: Chromium, Android 

— oh so many more things 

@vmbrasseur, CC BY-SA 9 


A new century brought an explosion of free and 
open source software and organisations. 

A Things have really escalated in the past 10 years. 
A FOSS components have become the default 
selection for many companies 



We've come of age 


@vmbrasseur, CC BY-SA 


"Software has eaten the world & open source has eaten 
software" is a phrase I've seen trotted out. 

While I don't really agree with it, there's no denying that the free 
and open source software movements have changed the face 
of technology & are here to stay. 

...and we're starting to reach the scale and age where oral 
history doesn't cut it anymore. 

40 years. 40. And we still have the founders of our movement 
in our midst. But for how long? 



There are now millions of free 
and open source projects 
currently in existence... 


@vmbrasseur, CC BY-SA 

11 



According to the 2016 Octoverse, there are over 19.4 
million publicly available repos on Github ALONE 



. . .we rely on them every day. . . 


@vmbrasseur, CC BY-SA 

12 



Many of us could not do our jobs without these projects. We 
couldn't run our companies. We couldn't serve our customers. 



...so what happens when their 
leaders move on? 


@vmbrasseur, CC BY-SA 

13 


But now, 40 years on, we're overdue to be thinking about how we in 
FOSS will get by when our founders, our leaders, move on. 

These aren't necessarily the bit RMSs and BDFLs of the world. Every 
project has people in important roles. Every project needs to consider 
backup plan for when those people leave the project for some reason. 



Succession 

Planning 

@vmbrasseur, CC BY-SA 14 


And that brings us to succession planning. 

I've done a lot of research into this in a FOSS context, 
including surveying and interviewing leaders and community 
members of open source projects and communities. 

First I'd like to define Succession Planning for y'all so we're 
all on the same page. 



Defined 


"Succession planning is a process for identifying and 
developing new leaders who can replace old leaders when 
they leave, retire or die." Wikipedia 


@vmbrasseur, CC BY-SA 


15 


This is the Wikipedia definition. It's pretty standard for what you 
find in the literature about this subject. 

The thing is, I'm not a big fan of this. It's rather limiting. It implies 
only "leaders" are the ones who need backup & successors. 

And what is a "leader" for FOSS, anyway? When you stop to 
think about it, it gets complicated pretty quickly. 



L e ad e rship Skills Pipeline 


Training and mentoring people in the skills required to 
step into important roles. 


@vmbrasseur, CC BY-SA 


16 


Literature focuses on high level leadership things like 
CEO, Founder, etc. 

This is FOSS. There are other important roles beyond 
project founder. Benevolent Dictator for Life. 

Any project role which is measured by bus factor is a role 
which can benefit from succession planning. 

Important to note here that these are Skills, and as Skills 
they can be learned. 



Why does it matter? 


@vmbrasseur, CC BY-SA 



Some of you out there are nodding along, "Yes, we should think 
about this." 

Others are all, like, "Meh, we've never done this in the past. Why 
should we think about it now?" 

Well, for starters, "we've always done it this way" is a very 
dangerous statement. But there are some other reasons why you 
should think about succession planning... 



Continuity 


@vmbrasseur, CC BY-SA 


18 


The most obvious reason. When someone leaves, what 
happens to the tasks they were performing? 

They were keeping some plates spinning. When they 
leave, do those plates fall and break? 

Succession planning helps ensure tasks continue to be 
performed and no one is left hanging. 



Avoid a power vacuum 


@vmbrasseur, CC BY-SA 


19 


If a person leaves a role without a replacement, it can lead to a 
lot of confusion, delays, and possible political woes for the 
project. 

Those political woes can be the most damaging to a group. 
Delays are more easily fixable than hurt feelings. 

Creating a succession plan can help alleviate the very insecure 
and unstable time when someone in a vital role moves on. 

There's no need for people to jockey for position quickly. 
Everyone knows who's next in line and why. 



Project/organisation longevity 


@vmbrasseur, CC BY-SA 


20 


The thinking required for succession planning is the sort of 
thinking which contributes to project longevity. 

The entire point of succession planning is that the group is taking 
the long view. By definition, you're thinking about longevity. 

Ensuring continuity in leadership, culture, productivity also helps 
to ensure that the project will continue. It will evolve, but it will 
survive. 



Reduce load/pressure on current leaders 


@vmbrasseur, CC BY-SA 


21 


Successor becomes backup 
A Leaders are more free to take vacations, etc. 
A Reduces burnout of project leaders & those 
in important roles 



Talent development 


@vmbrasseur, CC BY-SA 


22 


Lately we talk about mentoring a lot in FOSS communities, but it's 
usually in the context of how to contribute code 

We can also mentor people to become successors for critical 
roles 

This helps everyone: leaders get successors, project/organisation 
gets continuity, successors get career development and 
experience. 



Inspiration/motivation for new members 


@vmbrasseur, CC BY-SA 


23 


Along those lines, it can be very motivational for new 
community members to see a succession plan in action. 

"There is a path to and plan for leadership positions here. 
That could be me some day. I would like to stick around." 

Also instills confidence that the project has its shit 
together. 



Diversity of thoughts/Get out of a rut 


@vmbrasseur, CC BY-SA 


24 


Succession plans are a great opportunity to bring new 
people, new ideas into the leadership roles of a project. 

Studies show that diverse leadership teams are more 
effective and the projects they lead are more innovative. 

Use your succession planning as an opportunity to open 
the door to diversity. 



Truly meritocratic 


@vmbrasseur, CC BY-SA 25 

iviai ly \j 1 Ujcuio 11 1 1 woo aic |ji uuu ui u 1011 1 1 101 1 luui auy. 

Conceptually, it's a good idea. 

Unfortunately what passes for meritocracy typically translates to 
hostility toward new contributors and echo chambers. 

If you can't express what "merit" is beyond "HI know it when I see it" 
then you have not thought your vaunted principles through very well. 

A meritocracy without a mentoring program and healthy goverance 
structure is just an excuse to practice subjective discrimination. It's a 
way for bullies to hide behind unexpressed biases. 

IMO, you cannot value "merit" if you do not take the time to train 
people to earn that merit or even teach them what it is that earns 
them that merit. 

A well-executed succession plan can help with this. 

A well-executed succession plan is open, honest, documented. 



Summary of Benefits of Succession Planning 


— Continuity 

— Avoid a power vacuum 

— Project/organisation longevity 

— Reduce pressure/load on current leaders 

— Talent development 

— Inspiration/motivation for new members 

— Diversity of thoughts/Get out of a rut 

— Truly meritocratic 

@vmbrasseur, CC BY-SA 26 


As you can see, there are a lot of really great things 
which can come from having a succession plan. 

It's not a panacea. There will still be problems. But 
there are a lot of really worthwhile benefits here. 

Despite that, very few FOSS projects or 
organisations put much thought into it. 

Why? 



Why it doesn't happen 


@vmbrasseur, CC BY-SA 

27 



From my research, I've found the following reasons for why 
projects don't engage in succession planning: 



Too busy 


@vmbrasseur, CC BY-SA 


28 


A lot of people recognized succession planning as a problem in their 
project but just "hadn't gotten around to it" because there's "always 
something more important to work on." 

While I can understand this, I really can, I personally think this is more a 
problem with prioritization than with time availability. 

It's likely these people may not yet realise how bad it can be not to have 
succession plan when you need one. And that's why I'm talking to you 
today. 



Don't think of it 


@vmbrasseur, CC BY-SA 29 


Some are just so busy & preoccupied that they haven't even thought about, "Hey, what 
would happen if Sarah left the project?" It just never occurs to them. I mean, Sarah's 
always there when we need her, right? Always. 



Don't want to think of it 


@vmbrasseur, CC BY-SA 


30 


Succession planning is often, like estate planning, associated with negative feelings like 
loss and can make people address their own mortality. Some people aren't comfortable 
with this and avoid it. 



Attitude of current leaders 


@vmbrasseur, CC BY-SA 


31 


Current leaders don't want to recognize that they're replaceable 
or to consider that they might give up their power and influence. 

Failure to recognise or admit this can set the project up for 
failure in the long run. 

This doesn't happen often but it does happen and is worth 
mentioning. 



Don't know where to start 


@vmbrasseur, CC BY-SA 


32 


Some know it should happen, 

A are willing to carve out the time, 
A but don't know how to do it. 



How to develop FOSS 
leaders of the future 


@vmbrasseur, CC BY-SA 

33 



OK, so how do you do this? How do you even get started? 



DON'T PANIC 


@vmbrasseur, CC BY-SA 



I'm about to throw a lot at you. 

DO NOT feel you have to do it all or do it immediately. 

This is a process. Again, the thing about succession 
planning is you're taking the long view. That means it 
can & should take time. 

So don't worry if you don't feel you're making progress. 

If you're working on it at all, you ARE making progress. 
Congratulations. 

Also, I'll give suggestions not just for current leaders, but 
also for those who would like to move into critical roles. 



Current leaders 


@vmbrasseur, CC BY-SA 

35 



So, if you're currently in a critical role in a project, what can you do 
to help cultivate people to take your position when you move on? 



Don't work in isolation; work on this together & 
publicly 


@vmbrasseur, CC BY-SA 

36 


First of all, remember that you're in an open community 
and do all of your work in the open 

Solicit feedback from the community and keep them 
posted on what's happening and why 



Identify critical roles 


@vmbrasseur, CC BY-SA 



Step one is to identify those roles in your project which 
are fairly critical. 

You can look at other projects to get an idea of where to 
start, but... 

Only you & your project can define what qualifies as 
"critical" to you. 



Role != Person 


@vmbrasseur, CC BY-SA 


38 


Note: While it helps to start by looking at the people on the team, it' 
not always to correct that each person is performing only one role 



Identify role duties & responsibilities 


@vmbrasseur, CC BY-SA 

39 


Now, once you've identified those roles, be very 
honest with yourself and your community about 
the duties of each role. 

List what you think the role should do 

but also list those duties it ACTUALLY performs. 

Be honest about the duties a person is performing 
and how they might belong to multiple roles 



Refactor large roles 


@vmbrasseur, CC BY-SA 

40 


If a role does a LOT, then you should break it up into multiple 
smaller roles 

Refactor: redistribute roles amongst other people -> Reduce bus 
factor right there 

Refactoring also makes it much less intimidating for someone new 
to take on the role. The new role will be smaller and easier to step 
into. 



Knowledge transfer 


@vmbrasseur, CC BY-SA 



Once you've identified the roles, a lot of the work 
consists of knowledge transfer 

While this should be an on-going process, but you'll 
probabsly need a big initial brain dump 

once you've collected the initial information it should just 
be a matter of sharing it and maintaining incremental 
updates. 

So what knowledge should you be sharing? 



Procedures & processes 


@vmbrasseur, CC BY-SA 


42 


All those duties don't occur in a vacuum. How 
does one perform them? 

Some may be self-evident. Others may not. 

But remember: you have a different perspective. 
Self-evident to you isn't to others. 

So please be explicit and transfer all knowledge 
about all procedures & processes. 



Resources 


@vmbrasseur, CC BY-SA 


43 


List of accounts: What accounts exist out there? Travis? 
Twitter? 

List of contacts: Do you have meetups? Who are the people 
who usually help you with meeting space, sponsorship? 



Credentials 


@vmbrasseur, CC BY-SA 


44 


No one person should ever have access to credentials 
for services used by the project. 

This is one of the most common issues faced by 
projects when faced with a succession situation 

People walk away with the keys and no one else has 
copies 

I've also seen this power used for evil (shutting folks out, 
embezzling, etc) 

Always use role email accounts sent to multiple people, 
not individual/personal accounts. 



Project history 


@vmbrasseur, CC BY-SA 


45 


I swear, my next talk may be on the importance of 
history. 

For the love of dog, please make sure that everyone is 
aware of project history. 

This provides the context necessary to make the best 
decisions in the operation of duties. 



Limit tenure for a role 


@vmbrasseur, CC BY-SA 

46 


Ensure that it will be handed off 

Give current role-holder a light at the end of the 
tunnel 

Ensure there will be a body of people familiar 
with the role (past role holders) 



DOCUMENT 

ALL 

THESE 

THINGS 

@vmbrasseur, CC BY-SA 


Now, you've determined & discussed all these things. 

I mean, this has probably taken a LOT of a lot of peoples' 
time, amiright? 

FOR PETE'S SAKE, WRITE THEM DOWN. Don't lose this 
information. 

The How & Where doesn't matter nearly as much as the 
Whether. 

Capture this information for posterity. This is a talk on 
succession planning. For crying out loud, think of future 
generations of project leaders and write this stuff down now. 



But consider tl;dr docs 


@vmbrasseur, CC BY-SA 


Can be helpful to provide an overview doc (more bite- 
sized) 



New leaders 


@vmbrasseur, CC BY-SA 

49 


So don't think this only has to be the purview of those 
already in critical roles. 

Those of you who are interested in contributing at a 
higher level can do a lot to help this process. 



Look for opportunities to learn & contribute 


@vmbrasseur, CC BY-SA 


50 


For starters, look around. Where can you help those in 
critical roles? 

Are there opportunities for you to learn more about the 
leadership and operation of the project? 

I can almost guarantee the answer to that question is 
"hell yes." 

Ask to chip in. Volunteer for the small, possibly 
annoying, but definitely important tasks. 

Volunteering for the grunt work is a great way to 
apprentice your way into a leadership position. 



Shadow those in critical roles 


@vmbrasseur, CC BY-SA 


51 


Another way to learn and apprentice your way into 
one of these critical roles is to ask whether you might 
shadow one of these role-holders. 

See how the role is performed. What is the process & 
procedure? 

See what's actually involved with the role. 

Confirm whether you actually want to perform the role. 



Ask for mentorship 


@vmbrasseur, CC BY-SA 


52 


We who mentor.. .we're human & we're busy. We don't 
always have the mental cycles to recognise that 
mentoring it needed or wanted. 

We're usually happy to provide it, but sometimes we 
need a nudge. Please ask! 

Related to that, when you see someone performing 
critical duties, ask whether they'd be willing/able to 
teach you about it. 

Ask for feedback on tasks you perform. 

Ask for tasks you might perform to assist them. 



Learn the history of the project/organisation 


@vmbrasseur, CC BY-SA 


53 


Sit around the campfire with the project elders & listen to 
them spin yarns of the Good Old Days 

Extra points: write what you learn and share it for the 
benefit of your entire community 



Examples of projects 
working on this 


I 


@vmbrasseur, CC BY-SA 

54 


Was going to give examples of projects doing this 
badly but won't for 2 reasons: 

1. 1 don't believe in naming-shaming for stuff like this. 
A 2. My research shows I don't need to give 
examples of projects handling this badly because 
everyone already knows some. 

Instead, I'll give you examples of projects doing this 
well. 

Please note: This is not an exhaustive list. 




Exercism 


https ://exercism.io 

"The goal, of course, is to have at least three active 
maintainers for every single language track. This way we 
could put some procedures into place to mentor new 
contributors, nominate new maintainers, and to roll off the 
project without any sort of guilt when you no longer want 
to maintain a project . " 


@vmbrasseur, CC BY-SA 


55 


Over 60 language tracks, 35 active on the site 

Rated their tracks by how maintained they were. 

Making very active efforts to make sure each track 
has not one, but multiple maintainers 

Succession planning in action: always someone 
available to step in when one of the maintainers 
isn't available. 

Gives maintainers breathing room & a chance to 
take a break when they need it. 



Vox Pupuli 


https ://voxpupuli . org 

" One of the benefits we hope to achieve is that by a shared 
ownership of modules we no longer end up in situations 
where the original maintainer has moved on and a forest 
of disparate forks try to fill the void." 


@vmbrasseur, CC BY-SA 


56 


Ensure continued development of Puppet 
modules 

123 repositories of Puppet modules 



Image Credits 


— Title slide: joohander on Flickr, CC BY-NC. 

— Twitter icon: Andrey Vasiliev from the Noun Project 

— IRC icon: Gregor Cresnar from the Noun Project 

— Email icon: Mackey Guenther from the Noun Project 


@vmbrasseur, CC BY-SA 


57 


Next slide is the SeaGL CFP pitch! Be ready for that! 



Please CFP to 
SeaGL! 

http://seagl.org 

Seattle, WA - October 6-7 
#seagl on Freenode IRC 

@vmbrasseur, CC BY-SA 


Seattle GNU/Linux 

SeaGL is a great community-organised polyglot/ 
polytech conference happening in October. 

CFP is open now! 

Are you presenting at OpenWest? Are you 
inspired by anything you've heard at OpenWest? 

Same sorts of topics welcome at SeaGL! We 
love new speakers, too, & do whatever we can 
to make them successful. 



Inin i iq nn IDP f nr PPD holn ^nrl incnir^tinn 



Slides: 

https ://archive.org/details/openwest20 1 7- 
successionplanning 


Feedback! 

https ://www.openwest.org/schedule/#talk- 140 


@vmbrasseur, CC BY-SA 59 


Reminder: Slides available now. Screencast available 
soon. 

Also: Please rate this talk & provide feedback! Please! 

Now, any questions but not comments disguised as 
questions?